/*
 * trace_CmdValScpChangingLog.h
 *
 *  Created on: 2012/08/17
 *      Author: guanxiaoying
 */

#ifndef TRACE_CMDVALSCPCHANGINGLOG_H_
#define TRACE_CMDVALSCPCHANGINGLOG_H_

typedef struct _VALSCPCHANGINGLOGACCESS{
	BOOL (*clear)( VOID );
	BOOL (*alloc)( AST );
	AST  (*getMax)( VOID );
	ACCESS_U4_FIELD flag;
	ACCESS_U4_FIELD times;
	ACCESS_IDX_FIELD param;
	ACCESS_IDX_FIELD next;
	/* property below: get the value-scope of this variable */
	VOID (*getValueScope)( AST, TRVALUESCP* );
	/* property below: record the value-scope of this variable */
	VOID (*setValueScope)( AST, TRVALUESCP* );
	/* property below: get the value-scope of this variable when the result of condition is false */
	VOID (*getNegValueScope)( AST, TRVALUESCP* );
	/* property below: record the value-scope of this variable when the result of condition is false */
	VOID (*setNegValueScope)( AST, TRVALUESCP* );
}VALSCPCHANGINGLOGACCESS;
extern const VALSCPCHANGINGLOGACCESS stValScpChangingLogAccess;
#endif /* TRACE_CMDVALSCPCHANGINGLOG_H_ */
